package com.bw.crop.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 
 * @TableName sys_logs_warehouse
 */
@TableName(value ="sys_logs_warehouse")
@Data
public class SysLogsWarehouse implements Serializable {
    /**
     * 出入库记录表
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 出库/入库辨识字段0入库 1出库
     */
    private Integer outInWarehouse;

    /**
     * 出入库时间
     */
    private Date createDate;

    /**
     * 操作人
     */
    private String outInUser;

    /**
     * 出入库商品名称
     */
    private String outInGoods;

    /**
     * 出入库数量
     */
    private Integer outInSum;

    /**
     * 商品来向/去向
     */
    private String inFromTo;

    /**
     * 库区id
     */
    private Integer stashId;

    /**
     * 运输人id
     */
    private Integer transportId;

    /**
     * 仓库id
     */
    private Integer fstashId;

    @TableField(exist = false)
    private Integer month;


    @TableField(exist = false)
    private Integer inQuantity;
    @TableField(exist = false)
    private Integer outQuantity;
    @TableField(exist = false)
    private Integer remainQuantity;
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        SysLogsWarehouse other = (SysLogsWarehouse) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getOutInWarehouse() == null ? other.getOutInWarehouse() == null : this.getOutInWarehouse().equals(other.getOutInWarehouse()))
            && (this.getCreateDate() == null ? other.getCreateDate() == null : this.getCreateDate().equals(other.getCreateDate()))
            && (this.getOutInUser() == null ? other.getOutInUser() == null : this.getOutInUser().equals(other.getOutInUser()))
            && (this.getOutInGoods() == null ? other.getOutInGoods() == null : this.getOutInGoods().equals(other.getOutInGoods()))
            && (this.getOutInSum() == null ? other.getOutInSum() == null : this.getOutInSum().equals(other.getOutInSum()))
            && (this.getInFromTo() == null ? other.getInFromTo() == null : this.getInFromTo().equals(other.getInFromTo()))
            && (this.getStashId() == null ? other.getStashId() == null : this.getStashId().equals(other.getStashId()))
            && (this.getTransportId() == null ? other.getTransportId() == null : this.getTransportId().equals(other.getTransportId()))
            && (this.getFstashId() == null ? other.getFstashId() == null : this.getFstashId().equals(other.getFstashId()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getOutInWarehouse() == null) ? 0 : getOutInWarehouse().hashCode());
        result = prime * result + ((getCreateDate() == null) ? 0 : getCreateDate().hashCode());
        result = prime * result + ((getOutInUser() == null) ? 0 : getOutInUser().hashCode());
        result = prime * result + ((getOutInGoods() == null) ? 0 : getOutInGoods().hashCode());
        result = prime * result + ((getOutInSum() == null) ? 0 : getOutInSum().hashCode());
        result = prime * result + ((getInFromTo() == null) ? 0 : getInFromTo().hashCode());
        result = prime * result + ((getStashId() == null) ? 0 : getStashId().hashCode());
        result = prime * result + ((getTransportId() == null) ? 0 : getTransportId().hashCode());
        result = prime * result + ((getFstashId() == null) ? 0 : getFstashId().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", outInWarehouse=").append(outInWarehouse);
        sb.append(", createDate=").append(createDate);
        sb.append(", outInUser=").append(outInUser);
        sb.append(", outInGoods=").append(outInGoods);
        sb.append(", outInSum=").append(outInSum);
        sb.append(", inFromTo=").append(inFromTo);
        sb.append(", stashId=").append(stashId);
        sb.append(", transportId=").append(transportId);
        sb.append(", fstashId=").append(fstashId);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }


}